package com.hq.ims.data.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hq.ims.data.entityenum.EnumDataType;
import com.hq.mybatis.base.BaseModel;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.ibatis.type.Alias;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.hq.ims.data.entityenum.EnumAuditStatus;
import com.hq.ims.data.entityenum.EnumCompanyStatus;
import com.hq.ims.data.entityenum.EnumCompanyLevel;


import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @Author jiang bai ping
 * @Email 526666031@qq.com
 * @DateTime 2024-10-28 09:05:29
 * @Detail 企业信息
 */
@Alias("CompanyRuleHistory")
@TableName(value = "company_rule_history")
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value="企业信息")
public class CompanyRuleHistory extends BaseModel<CompanyRuleHistory> implements Serializable{

    @ApiModelProperty(value="主键")
	@TableId(value="`id`",type = IdType.ASSIGN_UUID)
	private String id;
	
	@ApiModelProperty(value="公司id")
	@TableField(value="`company_id`")
	private String companyId;

	@ApiModelProperty(value="公司名称")
	@TableField(value="`company_name`")
	private String companyName;
	
	@ApiModelProperty(value="公司审核id")
	@TableField(value="`company_check_id`")
	private String companyCheckId;
	
	@ApiModelProperty(value="公司变更id")
	@TableField(value="`company_change_id`")
	private String companyChangeId;
	
	@ApiModelProperty(value="数据类型（0之前，1之后）")
	@TableField(value="`data_type`")
	private EnumDataType dataType;
	
	@ApiModelProperty(value="审核状态")
	private EnumAuditStatus auditStatus;
	
	@ApiModelProperty(value="分成规则")
	@TableField(value="`company_divide_Into_rule_value`")
	private BigDecimal companyDivideIntoRuleValue;
	
	@ApiModelProperty(value="创建时间 - 不需程序员处理")
	@TableField(value="`create_date_time`",fill = FieldFill.INSERT)
	@JSONField(format="yyyy-MM-dd HH:mm:ss")
	private LocalDateTime createDateTime;
	
	@ApiModelProperty(value="更新时间 - 不需程序员处理")
	@TableField(value="`update_date_time`",fill = FieldFill.INSERT_UPDATE)
	@JSONField(format="yyyy-MM-dd HH:mm:ss")
	private LocalDateTime updateDateTime;
	
	@ApiModelProperty(value="创建用户名称")
	@TableField(value="`create_user_name`")
	private String createUserName;
	
	@ApiModelProperty(value="更新用户名")
	@TableField(value="`update_user_name`")
	private String updateUserName;
	
	@ApiModelProperty(value="乐观锁 - 不需程序员处理")
	@TableField(value="`version`")
	private Integer version;
	
	@ApiModelProperty(value="是否删除")
	@TableField(value="`is_del`")
	private Boolean isDel;
}
